package br.com.scpe.util;

import java.util.List;
import org.primefaces.model.SelectableDataModel;

import br.com.scpe.ejb.entity.Funcionario;

import javax.faces.model.ListDataModel;

public class ListaFuncionariosModelo extends ListDataModel<Funcionario> implements SelectableDataModel<Funcionario> {

	public ListaFuncionariosModelo() {}
	
	public ListaFuncionariosModelo(List<Funcionario> data) {
		super(data);
	}
	
	@Override
	@SuppressWarnings("unchecked")
	public Funcionario getRowData(String rowKey) {

		List<Funcionario> listaDeFuncionarios = (List<Funcionario>) getWrappedData();
		
		for (Funcionario funcionario : listaDeFuncionarios) {
			if (funcionario.getEmail().equals(rowKey))
				return funcionario;
		}
		return null;
	}
	
	@Override
	public String getRowKey(Funcionario funcionario) {
		return funcionario.getEmail();
	}
	
	@SuppressWarnings("unchecked")
	public Funcionario getRowData(long idFuncionario) {

		List<Funcionario> listaDeFuncionarios = (List<Funcionario>) getWrappedData();
		
		for (Funcionario funcionario : listaDeFuncionarios) {
			if (funcionario.getIdFuncionario() == idFuncionario)
				return funcionario;
		}
		return null;
	}
}